From 4062095bcbc7a0bf38a65ee90e8ffd2506d83950 Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Sat, 24 Feb 2007 14:19:42 +0000 Subject: [PATCH] Move some definitions from xg_save_resotre.h to xg_private.h which are necessary for the new dump core implementation. Signed-off-by: Isaku Yamahata --- tools/libxc/xc_linux_restore.c | 1 + tools/libxc/xc_linux_save.c | 1 + tools/libxc/xg_private.h | 17 +++++++++++++++++ tools/libxc/xg_save_restore.h | 21 --------------------- 4 files changed, 19 insertions(+), 21 deletions(-) diff --git a/tools/libxc/xc_linux_restore.c b/tools/libxc/xc_linux_restore.c index 822f3c5ec2..9627d96031 100644 --- a/tools/libxc/xc_linux_restore.c +++ b/tools/libxc/xc_linux_restore.c @@ -11,6 +11,7 @@ #include "xg_private.h" #include "xg_save_restore.h" +#include "xc_dom.h" /* max mfn of the current host machine */ static unsigned long max_mfn; diff --git a/tools/libxc/xc_linux_save.c b/tools/libxc/xc_linux_save.c index 35a5a5cd55..6b51872ac5 100644 --- a/tools/libxc/xc_linux_save.c +++ b/tools/libxc/xc_linux_save.c @@ -13,6 +13,7 @@ #include #include "xc_private.h" +#include "xc_dom.h" #include "xg_private.h" #include "xg_save_restore.h" diff --git a/tools/libxc/xg_private.h b/tools/libxc/xg_private.h index 3cf6fbf22a..2b66a29763 100644 --- a/tools/libxc/xg_private.h +++ b/tools/libxc/xg_private.h @@ -146,6 +146,23 @@ typedef l4_pgentry_64_t l4_pgentry_t; #define PAGE_SIZE_IA64 (1UL << PAGE_SHIFT_IA64) #define PAGE_MASK_IA64 (~(PAGE_SIZE_IA64-1)) +#define ROUNDUP(_x,_w) (((unsigned long)(_x)+(1UL<<(_w))-1) & ~((1UL<<(_w))-1)) + +/* Size in bytes of the P2M (rounded up to the nearest PAGE_SIZE bytes) */ +#define P2M_SIZE ROUNDUP((max_pfn * sizeof(xen_pfn_t)), PAGE_SHIFT) + +/* Number of xen_pfn_t in a page */ +#define fpp (PAGE_SIZE/sizeof(xen_pfn_t)) + +/* Number of entries in the pfn_to_mfn_frame_list_list */ +#define P2M_FLL_ENTRIES (((max_pfn)+(fpp*fpp)-1)/(fpp*fpp)) + +/* Number of entries in the pfn_to_mfn_frame_list */ +#define P2M_FL_ENTRIES (((max_pfn)+fpp-1)/fpp) + +/* Size in bytes of the pfn_to_mfn_frame_list */ +#define P2M_FL_SIZE ((P2M_FL_ENTRIES)*sizeof(unsigned long)) + #define PAEKERN_no 0 #define PAEKERN_yes 1 #define PAEKERN_extended_cr3 2 diff --git a/tools/libxc/xg_save_restore.h b/tools/libxc/xg_save_restore.h index 5496f02b70..8579ca8a5e 100644 --- a/tools/libxc/xg_save_restore.h +++ b/tools/libxc/xg_save_restore.h @@ -81,7 +81,6 @@ static inline int get_platform_info(int xc_handle, uint32_t dom, */ #define PFN_TO_KB(_pfn) ((_pfn) << (PAGE_SHIFT - 10)) -#define ROUNDUP(_x,_w) (((unsigned long)(_x)+(1UL<<(_w))-1) & ~((1UL<<(_w))-1)) /* @@ -94,25 +93,5 @@ static inline int get_platform_info(int xc_handle, uint32_t dom, #define M2P_SIZE(_m) ROUNDUP(((_m) * sizeof(xen_pfn_t)), M2P_SHIFT) #define M2P_CHUNKS(_m) (M2P_SIZE((_m)) >> M2P_SHIFT) -/* Size in bytes of the P2M (rounded up to the nearest PAGE_SIZE bytes) */ -#define P2M_SIZE ROUNDUP((max_pfn * sizeof(xen_pfn_t)), PAGE_SHIFT) - -/* Number of xen_pfn_t in a page */ -#define fpp (PAGE_SIZE/sizeof(xen_pfn_t)) - -/* Number of entries in the pfn_to_mfn_frame_list */ -#define P2M_FL_ENTRIES (((max_pfn)+fpp-1)/fpp) - -/* Size in bytes of the pfn_to_mfn_frame_list */ -#define P2M_FL_SIZE ((P2M_FL_ENTRIES)*sizeof(unsigned long)) - -/* Number of entries in the pfn_to_mfn_frame_list_list */ -#define P2M_FLL_ENTRIES (((max_pfn)+(fpp*fpp)-1)/(fpp*fpp)) - /* Returns TRUE if the PFN is currently mapped */ #define is_mapped(pfn_type) (!((pfn_type) & 0x80000000UL)) - -#define INVALID_P2M_ENTRY (~0UL) - - - -- 2.30.2